Safe food ordering by voice while driving

ABSTRACT

Techniques for safe food ordering by voice while driving are described. A customer driving a vehicle decides to order food from a restaurant. The customer launches a food-ordering app on the customer&#39;s smartphone. The app detects that the vehicle is moving, disables manual input into the smartphone, and connects to a terminal at a call center. A customer service representative (“CSR”) at the call center communicates with the customer using spoken language to obtain the details of the food order, enters the food order into an ordering system, and transmits the food order via the ordering system to the restaurant for fulfillment. Finally, the customer picks up the ordered food at the restaurant, possibly using a drive-thru window at the restaurant. Thus, the customer is able to complete an order for food without having to stop driving and without averting their eyes from the road.

TECHNICAL FIELD

The present disclosure generally relates to mobile devices andspecifically to techniques for safe food ordering by voice whiledriving.

BACKGROUND

In the United States of America, texting while driving causes 25% of allcar accidents, 11 teen deaths every day, and over 330,000 injuries peryear. A driver is approximately 6 times more likely to cause an accidentby texting while driving than driving intoxicated. At the same time,more and more fast food restaurants (e.g., quick serve restaurants or“QSRs”) offer smartphone apps that allow users to order food, possiblywhile driving. Approximately two-thirds of all QSR orders are placed bycustomers in a vehicle and fulfilled at a QSR drive-thru.

BRIEF DESCRIPTION OF THE DRAWINGS

Some embodiments are illustrated by way of example and not limitation inthe figures of the accompanying drawings.

FIG. 1 illustrates a system for safe food ordering by voice whiledriving, according to an example embodiment.

FIG. 2 is a flow diagram of a method for safe food ordering by voicewhile driving, according to an example embodiment.

FIG. 3 illustrates a user interface of a food-ordering app in voiceordering mode, according to an example embodiment.

FIG. 4 illustrates a user interface of a food-ordering app in manualinput mode, according to an example embodiment.

FIG. 5 is a block diagram illustrating a mobile communications device,according to an example embodiment.

FIG. 6 is a block diagram depicting a client-server network architectureof a system configured for exchanging data over a network, according toan example embodiment.

FIG. 7 is a block diagram illustrating an example of a machine, uponwhich one or more embodiments may be implemented.

DETAILED DESCRIPTION

The present disclosure describes methods, systems, and computer programproducts that individually provide safe food ordering by voice whiledriving. Currently, apps exist that allow customers to order food ontheir smartphones, possibly while driving. Most of these apps requiremanual user input, such as entering text via a keyboard or selectinggraphical user interface controls (e.g., buttons), to designate thedetails of the customer's food order. For example, U.S. Pat. No.6,880,750, to Pentel, entitled “Remote ordering device,” disclosesplacing orders using cell phones. However, Pentel expressly states thathis invention “allows the customer to order items from a (graphical)menu without the necessity to speak to an attendant . . . (resulting) inmore accurate orders.”

Although some food-ordering apps that allow a customer to enterinformation via voice exist, these voice-enabled food-ordering apps haveat least one visual component that displays to the customer informationthat is necessary to complete the food order, thus requiring thecustomer to avert their eyes from the road for some amount of time toplace an order successfully. As a result, vehicle accidents are likelyto increase amongst customers who use these apps while driving.

As opposed to the apps described above, the current disclosure discussesa food-ordering smartphone app that does not require the customer toavert their eyes from the road to order food from a restaurant. Thisdisclosure describes such mechanisms.

An example scenario for using the disclosed safe food-ordering app whiledriving is as follows. A customer, who is currently driving a vehicle,feels hungry and wants to order food from a restaurant. The customerlaunches a food-ordering app on the customer's smartphone. Thefood-ordering app detects that the vehicle is moving; as a result, thefood-ordering app disables manual input into the app, enables voiceinput into the app, and connects to a terminal at a call center. Acustomer service representative (“CSR”) at the call center uses theterminal to communicate with the customer using spoken language. The CSRcommunicates with the customer to obtain the details of the food order,enters the food order into a computerized ordering system, and transmitsthe food order via the computerized ordering system to the restaurantfor fulfillment. Finally, the customer picks up the ordered food at therestaurant, possibly using a drive-thru window at the restaurant. Thus,by using the system for safe food ordering by voice while driving, thecustomer is able to complete an order for food without having to stopdriving and without averting their eyes from the road.

FIG. 1 illustrates a system 100 for safe food ordering by voice whiledriving, according to an example embodiment. The system 100 includes acustomer 102, a vehicle 104, a mobile communications device 106, afood-ordering app executing on the mobile communications device 106, aremote order facilitation system 108, a remote terminal 110 at theremote order facilitation system 108, one or more CSRs 111, a restaurant112, and one or more networks 116, such as the Internet. In an example,the system 100 also includes one or more base transceiver stations (BTS)114, which enables the mobile communications device 106 to connectwirelessly to network(s) 116. In an example, the system 100 alsoincludes one or more computer servers 118, which provide one or moreservices (e.g., voice telephony, Internet connectivity, etc.) to theremote terminals 110. In an example, the system 100 also includes one ormore computer servers 120, which provide one or more services (e.g.,order presentation, logistics, etc.) to the restaurant 112.

The vehicle 104 may be any mode of transportation, which requires aperson controlling the vehicle 104 to use the person's vision to preventphysical collisions between the vehicle 104 and the vehicle'ssurroundings. Thus, the vehicle 104 may be a passenger vehicle such asan automobile (terrestrial, aerial, or aquatic), a pickup truck, a boat,or the like. The vehicle 104 may be a commercial vehicle such as a taxi,a semi-trailer truck, a bus, a train car, a subway car, or the like. Thevehicle 104 may be a helicopter, an airplane, or even a jetpack.

The mobile communications device is any device 106, which has a displaydevice that produces visual output, a manual input device that receivesmanual input, and a wireless transceiver that transmits and receiveswireless signals. The mobile communications device 106 may be a portablecomputing device such as a smartphone, a tablet computer, a smart watch,smart glasses, or the like, or it may be an integrated computing devicethat is integrated into the vehicle 104 (e.g., a dashboard computer).The display may be a physical screen such as a liquid crystal display(“LCD”) or light-emitting diode (“LED”), an illuminated screen such ascreated by a projector, or some combination thereof. The manual inputdevice may be a physical keyboard, a virtual keyboard, a physicaltouchscreen, a virtual touchscreen, a trackball, a camera that capturesgestures, etc.

The food-ordering app may be restaurant chain-specific (e.g., the appcan be used to order food from any “Brand X” restaurant.) Thefood-ordering app may be specific to a group of restaurant chains, suchas a group of restaurant chains that are commonly owned (e.g., chain Xand chain Y both owned by the same company). The food-ordering app maybe specific to one or more individual restaurants 112.

The food-ordering app may have a “default restaurant” setting, enablingthe food-ordering app to choose a default restaurant 112. Thefood-ordering app may default to choosing the participating restaurant112 closest to at least one of the customer's current location, thecustomer's destination, and the customer's intended travel route. Thecurrent location may be obtained from a GPS unit or may be obtained fromthe customer 102. The customer's destination may be obtained from thecustomer 102. “Web mapping” or “web GIS” is the process of using a mapdelivered by a geographical information system (GIS). One or more of thecustomer's current location, the customer's destination, and thecustomer's intended travel route may be obtained from a mapping appusing a web GIS system (e.g., Google Maps). The mapping app may beintegrated within the food-ordering app, may be a separate app executingon the mobile communications device 106, or may be an app executing on aseparate device (e.g., a dashboard computer within the vehicle 104). Thefood-ordering app may default to choosing the participating restaurant112 last chosen by either the food-ordering app or the customer 102.

The remote order facilitation system 108 may be a call center; the callcenter may be located in the same building as the restaurant 112, may beremotely located in another building, or may even be located on anothercontinent. Furthermore, the remote order facilitation system 108 isillustrated in FIG. 1 as one system. However, the system of the remoteorder facilitation system 108 may physically exist as multiplesub-systems and/or terminals 110 co-located in one building, as multiplesub-systems and/or terminals 110 that are geographically dispersed, orsome combination thereof.

The remote terminal 110 allows voice communications, and in an example,data communications between the remote terminal 110 and the customer'smobile communications device 106. The remote terminal 110 may be atelephone, a computer, or a combination of the two. The remote terminal110 may include a headset or other speaker/microphone unit for the CSR111 to wear. The remote terminal 110 may execute the food-ordering appdirectly, may execute an emulation of the food-ordering app, or may useanother computerized ordering system. In an example, the remote terminal110 cooperates with computer server(s) 118 to provide these services.

The one or more computer servers 118 may be located in the samebuilding(s) as the remote order facilitation system 108, may be remotelylocated in one or more buildings, or may even be located on anothercontinent. In an example, the one or more computer servers 118 may becloud computing resources located in a “cloud computing” environment(not shown).

The one or more computer servers 120 may be located in the same buildingas the restaurant 112, may be remotely located in one or more buildings,or may even be located on another continent. In an example, the one ormore computer servers 120 may be cloud computing resources located in a“cloud computing” environment 122.

The restaurant 112 includes one or more computer terminals 121 tocommunicate with the one or more computer servers 120, for example toreceive food orders to be fulfilled. Computer terminal 121 may be atelephone, a computer, or a combination of the two. Computer terminal121 may include a headset or other speaker/microphone unit for arestaurant worker (not shown) to wear.

FIG. 2 is a flow diagram of a method 200 for safe food ordering by voicewhile driving, according to an example embodiment. The food-ordering appis invoked on the mobile communications device (operation 202). In anexample, the food-ordering app is invoked by a spoken command, thusobviating the need for the customer to divert their eyes from theenvironment surrounding the vehicle to launch the food-ordering app.

While the food-ordering app is executing, the food-ordering app detectswhether the mobile communications device 106 is in motion by using amotion detection system (operation 204). The motion detection system mayinclude a global positioning system (GPS), an accelerometer, aspeedometer of the vehicle 104, or some other device. The motiondetection system may be integrated into the mobile communications device106 or may be external to the mobile communications device 106 (e.g., aseparate hand-held GPS unit, a GPS unit integrated into the vehicle 104,etc.)

If the mobile communications device 106 is in motion, the mobilecommunications device 106 uses the motion detection system to determinethe approximate speed of the mobile communications device 106 and thefood-ordering app determines whether the approximated speed is above aspecified speed limit (operation 206). The specified speed limit may beconfigurable by at least one of the customer 102, the developer of thefood-ordering app, a restaurant 112 participating in the servicesoffered by the food-ordering app, etc. For example, restaurant chain Xmay set the speed limit at 20 mph, restaurant chain Y may set the speedlimit at 15 mph, and the customer 102 may set the speed limit at 25 mph.In an example, if multiple speed limits are set, the lowest speed limitis used.

If the approximate speed is above the specified limit, the food-orderingapp disables manual input into the app (operation 208) or into themobile communications device 106 itself. The food-ordering app may alsomodify the display of the mobile communications device 106 to displaynothing, a logo of the restaurant, a message such as “KEEP YOUR EYES ONTHE ROAD!,” etc.

The food-ordering app establishes a connection to a remote terminal 110at the remote order facilitation system 108 (operation 210). Theconnection supports voice data transmissions between the mobilecommunications device 106 and the remote terminal 110. The connectionmay be circuit-switched (e.g., a digital or analog connection that is adedicated network channel established before the nodes may communicate)or packet-switched. If the connection is packet-switched, the connectionmay also support non-voice data transmissions between the mobilecommunications device 106 and the remote terminal 110. In an example,the connection is actually multiple connections (e.g., a connection forvoice transmissions and another connection for data transmissions).

The customer 102 and the CSR 111 proceed to have an oral conversationregarding the food order as follows. The food-ordering app receivesspoken input, captured by a microphone of the mobile communicationsdevice 106, corresponding to a food order (operation 212) and transmitsthe spoken food order to the remote terminal 110 at the remote orderfacilitation system 108 (operation 214). The food-ordering app may alsoreceive sound waves (e.g., spoken words from the CSR 111) thatoriginated at the remote terminal 110 and that were transmitted by theremote terminal 110 to the mobile communications device 106. The mobilecommunications device 106 may output the sound waves using a speaker ofthe mobile communications device 106. In some examples, thecommunications between the customer 102 and the CSR 111 are full-duplex(e.g., both parties can communicate to the other simultaneously), whilein other examples, the communications between the customer 102 and theCSR 111 are half-duplex (e.g., each party can communicate to the otherbut not simultaneously; the communication is one direction at a time).

One or more portions of the food-ordering system 100 may utilize speechrecognition techniques (e.g., speech recognition software) to convertthe voice input corresponding to a food order into text. The text of theconverted voice input may be displayed to the CSR 111 at the remoteorder facilitation system 108 to assist the CSR 111 in understanding thecustomer 102. This can be particularly useful in scenarios where thecustomer 102 is speaking in a language that is not native to thecustomer 102, the CSR 111 is speaking in a language that is not nativeto the CSR 111, the customer's ambient environment is noisy, etc.

The CSR 111 inputs the details of the food order into a computerizedordering system (operation 216). The computerized ordering system may bethe same edition or a different edition of the food-ordering app. Thecomputerized ordering system may be executed directly by or may beemulated by the remote terminal 110, the computer server(s) 118, or somecombination thereof. In an example, the computerized ordering system isa separate program or set of programs executed by the remote terminal110 or another device. The computerized ordering system transmits thefood order to the intended restaurant 112 (operation 228). Finally, theintended restaurant 112 fulfills the food order (operation 230).

If the vehicle is not in motion (operation 204), or if the approximatespeed is not above the specified limit (operation 206), thefood-ordering app causes a speaker of the mobile communications device106 to output an automated audio driving inquiry (operation 218), suchas, “Are you currently driving a vehicle?” The food-ordering app waitsto receive audio corresponding to a spoken answer (operation 220). Uponreceiving a spoken answer (operation 220), the received audio isprocessed using speech recognition software to determine the spokenanswer (operation 222). If the spoken answer is unintelligible, isunrecognizable, or is the word “Yes” or any other word or phrase with ameaning connoting affirmation, the food-ordering app proceeds as if theapproximated speed was above the specified speed limit (operations208-216, 228, and 230).

If the spoken answer is “No” or any other word or phrase with a meaningconnoting denial, the food-ordering app enables and receives manualinput (operation 224) corresponding to a food order. The customer 102enters the details of the food order into the food-ordering app; whenthe customer 102 is finished, the customer 102 selects an appropriateuser interface control to indicate that the food order is ready to besubmitted. The food-ordering app then submits the received food order toa computerized ordering system (operation 226). The computerizedordering system transmits the food order to the intended restaurant 112(operation 228). Finally, the intended restaurant 112 fulfills the foodorder (operation 230). In an example, if the customer's spoken answer is“No” or any other word or phrase with a meaning connoting denial, thefood-ordering app records the audio of the customer's spoken answer forliability purposes. The food-ordering app then stores the audiorecording on the mobile communications device 106 and/or transmits theaudio recording to another location (e.g., the remote order facilitationsystem 108) for archival.

Whether the food order is placed by voice input or manual input into thefood-ordering app, the customer 102 may choose one or more paymentoptions. The customer may choose to pay at the restaurant 112. Thecustomer may choose to pay with one or more of a credit card account, astored value account (e.g., a gift card), or a payment service (e.g.,Google Wallet or Apple Pay), etc.

During its execution, the food-ordering app constantly monitors forvehicle motion (operation 204). If the food-ordering app detects thevehicle is in motion (operation 204) while manual input is enabled(operation 224) into the food-ordering app, the mobile communicationsdevice 106 uses the motion detection system to determine the approximatespeed of the mobile communications device 106 and the food-ordering appdetermines whether the approximated speed is above a specified speedlimit (operation 206). If the approximated speed is above a specifiedspeed limit (operation 206), the food-ordering app switches to voiceordering mode 207 (beginning with operation 208).

In an example, the food-ordering app captures the manual inputs that hadbeen entered into the food-ordering app (at operation 224) prior toswitching from manual input to voice input, and sends this capturedmanual input to the remote order facilitation system 108. The CSR 111can use this captured manual input to help the customer 102 resume theorder, rather than having to start the order anew. For example, prior toswitching from manual input mode to voice ordering mode 207, thecustomer 102 may have selected a cheeseburger and French fries as apartial order and a restaurant location to fulfill the order. Uponreceiving this information, the CSR 111 can confirm the already-selecteditems, ask whether the customer 102 wants to add another food item tothe order, suggest a food item to the customer 102, etc.

FIG. 3 illustrates a user interface 302 of a food-ordering app in voiceordering mode, according to an example embodiment. In the exampleembodiment illustrated in FIG. 3, the mobile communications device 106is a smartphone, however, other types of mobile communications devices106 are also possible. While in voice ordering mode, the food-orderingapp accepts only voice input; manual input into the user interface 302of the food-ordering app is disabled.

In an embodiment, user interface 302 of the food-ordering app includesone or more of the following: a restaurant name and/or logo 304, astatus indicator 306 (e.g., “voice ordering mode activated”), and amessage to the user 308 (e.g., “KEEP YOUR EYES ON THE ROAD!”).

FIG. 4 illustrates a user interface 402 of a food-ordering app in manualinput mode, according to an example embodiment. In the exampleembodiment illustrated in FIG. 4, the mobile communications device 106is a smartphone, however, other types of mobile communications devices106 are also possible. The user interface 402 accepts manual input insituations that do not present a risk of physical collisions between thevehicle 104 and the vehicle's surroundings (e.g., operation 224 of FIG.2.)

User interface 402 includes a mechanism for selecting a restaurant 112to fulfill the food order. For example, the user interface 402illustrated in FIG. 4 includes a select restaurant dropdown control 404.Upon being selected, the select restaurant dropdown control 404 expandsto list one or more restaurants 112 that are available for orderingfood. Upon the customer 102 selecting a restaurant 112, the userinterface 402 closes the select restaurant dropdown control 404, andoptionally activates (e.g., selects) the next control(s) in the orderingprocess.

User interface 402 includes a mechanism for selecting food items fromthe selected restaurant 112. For example, the user interface 402illustrated in FIG. 4 includes a select food item(s) dropdown control406. Upon being selected, the select food item(s) dropdown control 406expands to list the food item(s) available for ordering at therestaurant 112 selected in the select restaurant dropdown control 404.Upon the customer 102 indicating that the customer 102 has completedselecting the food item(s), the user interface 402 closes the selectfood item(s) dropdown control 406, and optionally activates (e.g.,selects) the next control(s) in the ordering process.

User interface 402 includes a mechanism for selecting one or morepayment methods to pay for the food items ordered from the selectedrestaurant 112. For example, the user interface 402 illustrated in FIG.4 includes a select payment method(s) dropdown control 408. Upon beingselected, the select payment method(s) dropdown control 408 expands tolist the payment method(s) that are accepted by the selected restaurant112 and that are also available to the customer 102. For example, if therestaurant accepts Google Wallet, but the customer 102 does not have aGoogle Wallet account, the option for Google Wallet will not bedisplayed (or may be displayed, but not selectable by customer 102).Upon the customer 102 indicating that the customer 102 has completedselecting the payment method(s), the user interface 402 closes theselect payment method(s) dropdown control 408, and optionally activates(e.g., selects) the next control(s) in the ordering process.

User interface 402 includes a mechanism for selecting whether the foodis to be delivered or picked-up. For example, the user interface 402illustrated in FIG. 4 includes a select delivery/pick-up method dropdowncontrol 410. Upon being selected, the select delivery/pick-up methoddropdown control 410 expands to list the options the selected restaurant112 offers for making the food available to the customer 102 (e.g.,delivery, curbside restaurant pick-up, in-restaurant pick-up, restaurantdrive-thru pickup, etc.) Upon the customer 102 selecting adelivery/pick-up method, the user interface 402 closes the selectdelivery/pick-up method dropdown control 410, and optionally activates(e.g., selects) the next control(s) in the ordering process.

User interface 402 includes a mechanism for selecting a time for thedelivery/pick-up method selected by the customer 102. For example, theuser interface 402 illustrated in FIG. 4 includes a selectdelivery/pick-up time dropdown control 412. Upon being selected, theselect delivery/pick-up time dropdown control 412 lists the time optionsthe selected restaurant 112 has available for making the food availableto the customer 102 via the selected delivery/pick-up method selected bythe customer 102. Upon the customer 102 selecting a delivery/pick-uptime, the user interface 402 closes the select delivery/pick-up timedropdown control 412, and optionally activates (e.g., selects) the nextcontrol(s) in the ordering process.

When the customer 102 is ready to place the food order, the customer 102selects the “submit order” button 414. The food-ordering app reads thevalues selected within controls 404-412 and creates a “food order” datastructure to represent the selected values. The food-ordering app thensends the food-order data structure to the remote order facilitationsystem 108, which processes the food order as necessary.

FIG. 5 is a block diagram illustrating a mobile communications device106, according to an example embodiment. The mobile communicationsdevice 106 can include a processor 502. The processor 502 can be any ofa variety of different types of commercially available processorssuitable for mobile communications devices 106 (e.g., an XScalearchitecture microprocessor, a Microprocessor without InterlockedPipeline Stages (MIPS) architecture processor, or another type ofprocessor). A memory 504, such as a random access memory (RAM), a flashmemory, or other type of memory, is typically accessible to theprocessor 502. The memory 504 can be adapted to store an operatingsystem (OS) 506, as well as application programs 508, such as a mobilelocation enabled food-ordering app. The processor 502 can be coupled,either directly or via appropriate intermediary hardware, to a display510 and to one or more input/output (I/O) devices 512, such as a keypad,a touch panel sensor, a microphone, and the like. In an example, atouchscreen operates as both a display 510 and as an I/O device 512.Similarly, in an example, the processor 502 can be coupled to atransceiver 514 that interfaces with an antenna 516. The transceiver 514can be configured to both transmit and receive cellular network signals,wireless data signals, or other types of signals via the antenna 516,depending on the nature of the mobile communications device 106. In someconfigurations, a GPS receiver 518 can also make use of the antenna 516to receive GPS signals. In some configurations, an accelerometer 520gathers motion-related data and communicates the data with the processor502.

FIG. 6 is a block diagram depicting a client-server network architectureof a system configured for exchanging data over a network, according toan example embodiment. In the example embodiment, a networked system 602functions as a computer server 118 or computer server 120, and providesserver-side functionality, via a network 116 (e.g., the Internet or aWide Area Network (WAN)) to one or more client machines (e.g., mobilecommunications device 106 or remote terminal 110). FIG. 6 illustrates,for example, a web client 606 (e.g., a browser, such as the InternetExplorer browser developed by Microsoft Corporation of Redmond,Washington State) and a programmatic client 608 executing on respectiveclient machines 610 and 612. Client machines 610 and 612 can comprisemobile communications devices 106 (e.g., smartphones, smartwatches,etc.) or remote terminals 110, as will be discussed in further detailbelow.

An API server 614 and a web server 616 are coupled to, and provideprogrammatic and web interfaces respectively to, one or more applicationservers 618. The application servers 618 host one or more food-orderingapplications 620 and payment applications 622. The application servers618 are, in turn, shown to be coupled to one or more database servers624 that facilitate access to one or more databases 626.

The food-ordering applications 620 can provide a number of food-orderingfunctions and services to customers 102 or CSRs 111 who access thenetworked system 602. The payment applications 622 can likewise providea number of payment services and functions to customers 102 orrestaurants 112. The payment applications 622 can allow a customer 102to accumulate value (e.g., in a commercial currency, such as the U.S.dollar, or in a proprietary currency, such as “points”) in accounts, andthen later to redeem the accumulated value for products (e.g., food)that are made available via the food-ordering applications 620. In anembodiment, the payment applications 622 can process other forms ofelectronic payment, such as credit cards, debit cards, etc.) Althoughthe food-ordering and payment applications 620 and 622 are shown in FIG.6 to both form part of the networked system 602, it will be appreciatedthat, in alternative embodiments, the payment applications 622 can formpart of a payment service that is separate and distinct from thenetworked system 602.

Further, while the client-server system 600 shown in FIG. 6 employs aclient-server architecture, the embodiments are, of course not limitedto such an architecture, and can equally well find application in adistributed, or peer-to-peer, architecture system, for example.

The web client 606 accesses the various food-ordering and paymentapplications 620 and 622 via the web interface supported by the webserver 616. Similarly, the programmatic client 608 accesses the variousservices and functions provided by the food-ordering and paymentapplications 620 and 622 via the programmatic interface provided by theAPI server 614. The programmatic client 608 can, for example, be afood-ordering app executing on a mobile communications device 106, afood-ordering app executing on or being emulated by a remote terminal110, a computerized ordering system executing on a remote terminal 110,etc.

FIG. 6 also illustrates a third party application 628, executing on athird party server machine 630, as having programmatic access to thenetworked system 602 via the programmatic interface provided by the APIserver 614. For example, the third party application 628 can, utilizinginformation retrieved from the networked system 602, support one or morefeatures or functions on a website hosted by the third party. The thirdparty website can, for example, provide one or more promotional,marketplace, or payment functions that are supported by the relevantapplications of the networked system 602.

FIG. 7 illustrates a block diagram of an example machine 700 upon whichany one or more of the techniques (e.g., methodologies) discussed hereinmay perform. The machine 700 is any device, which has a display devicethat produces visual output, a manual input device that receives manualinput, and a wireless transceiver that transmits and receives wirelesssignals. The machine 700 may be a portable computing device such as asmartphone, a tablet computer, a smart watch, smart glasses, or thelike, an integrated computing device that is integrated into the vehicle(e.g., a dashboard computer), or any machine capable of executinginstructions (sequential or otherwise) that specify actions to be takenby that machine. Further, while only a single machine is illustrated,the term “machine” shall also be taken to include any collection ofmachines that individually or jointly execute a set (or multiple sets)of instructions to perform any one or more of the methodologiesdiscussed herein, such as cloud computing, software as a service (SaaS),other computer cluster configurations.

Examples, as described herein, may include, or may operate by, logic ora number of components, or mechanisms. Circuit sets are a collection ofcircuits implemented in tangible entities that include hardware (e.g.,simple circuits, gates, logic, etc.). Circuit set membership may beflexible over time and underlying hardware variability. Circuit setsinclude members that may perform, alone or in combination, specifiedoperations when operating. In an example, hardware of the circuit setmay be immutably designed to carry out a specific operation (e.g.,hardwired). In an example, the hardware of the circuit set may includevariably connected physical components (e.g., execution units,transistors, simple circuits, etc.) including a computer readable mediumphysically modified (e.g., magnetically, electrically, moveableplacement of invariant massed particles, etc.) to encode instructions ofthe specific operation. In connecting the physical components, theunderlying electrical properties of a hardware constituent are changed,for example, from an insulator to a conductor or vice versa. Theinstructions enable embedded hardware (e.g., the execution units or aloading mechanism) to create members of the circuit set in hardware viathe variable connections to carry out portions of the specific operationwhen in operation. Accordingly, the computer readable medium iscommunicatively coupled to the other components of the circuit setmember when the device is operating. In an example, any of the physicalcomponents may be used in more than one member of more than one circuitset. For example, under operation, execution units may be used in afirst circuit of a first circuit set at one point in time and reused bya second circuit in the first circuit set, or by a third circuit in asecond circuit set at a different time.

Machine (e.g., computer system) 700 may include a hardware processor 702(e.g., a central processing unit (CPU), a graphics processing unit(GPU), a hardware processor core, or any combination thereof), a mainmemory 704 and a static memory 706, some or all of which may communicatewith each other via an interlink (e.g., bus) 708. The machine 700 mayfurther include a display unit 710, an alphanumeric input device 712(e.g., a keyboard), and a user interface (UI) navigation device 714(e.g., a mouse). In an example, the display unit 710, input device 712and UI navigation device 714 may be a touch screen display. The machine700 may additionally include a storage device (e.g., drive unit) 716, asignal generation device 718 (e.g., a speaker), a network interfacedevice 720, and one or more sensors 721, such as a global positioningsystem (GPS) sensor, compass, accelerometer, or other sensor. Themachine 700 may include an output controller 728, such as a serial(e.g., universal serial bus (USB), parallel, or other wired or wireless(e.g., infrared (IR), near field communication (NFC), etc.) connectionto communicate or control one or more peripheral devices (e.g., aprinter, card reader, etc.).

The storage device 716 may include a machine-readable medium 722 onwhich is stored one or more sets of data structures or instructions 724(e.g., software) embodying or utilized by any one or more of thetechniques or functions described herein. The instructions 724 may alsoreside, completely or at least partially, within the main memory 704,within static memory 706, or within the hardware processor 702 duringexecution thereof by the machine 700. In an example, one or anycombination of the hardware processor 702, the main memory 704, thestatic memory 706, or the storage device 716 may constitutemachine-readable media.

Although the machine-readable medium 722 is illustrated as a singlemedium, the term “machine-readable medium” may include a single mediumor multiple media (e.g., a centralized or distributed database, and/orassociated caches and servers) configured to store the one or moreinstructions 724.

The term “machine-readable medium” may include any medium that iscapable of storing, encoding, or carrying instructions for execution bythe machine 700 and that cause the machine 700 to perform any one ormore of the techniques of the present disclosure, or that is capable ofstoring, encoding or carrying data structures used by or associated withsuch instructions. Non-limiting machine-readable medium examples mayinclude solid-state memories, and optical and magnetic media. In anexample, a massed machine-readable medium comprises a machine-readablemedium with a plurality of particles having invariant (e.g., rest) mass.Accordingly, massed machine-readable media are not transitorypropagating signals. Specific examples of massed machine-readable mediamay include non-volatile memory, such as semiconductor memory devices(e.g., Electrically Programmable Read-Only Memory (EPROM), ElectricallyErasable Programmable Read-Only Memory (EEPROM)) and flash memorydevices; magnetic disks, such as internal hard disks and removabledisks; magneto-optical disks; and CD-ROM and DVD-ROM disks.

The instructions 724 may further be transmitted or received over acommunications network 726 using a transmission medium via the networkinterface device 720 utilizing any one of a number of transfer protocols(e.g., frame relay, internet protocol (IP), transmission controlprotocol (TCP), user datagram protocol (UDP), hypertext transferprotocol (HTTP), etc.). Example communication networks may include alocal area network (LAN), a wide area network (WAN), a packet datanetwork (e.g., the Internet), mobile telephone networks (e.g., cellularnetworks), Plain Old Telephone (POTS) networks, and wireless datanetworks (e.g., Institute of Electrical and Electronics Engineers (IEEE)802.11 family of standards known as Wi-Fi , IEEE 802.16 family ofstandards known as WiMAX®), IEEE 802.15.4 family of standards,peer-to-peer (P2P) networks, among others. In an example, the networkinterface device 720 may include one or more physical jacks (e.g.,Ethernet, coaxial, or phone jacks) or one or more antennas to connect tothe communications network 726. In an example, the network interfacedevice 720 may include a plurality of antennas to wirelessly communicateusing at least one of single-input multiple-output (SIMO),multiple-input multiple-output (MIMO), or multiple-input single-output(MISO) techniques. The term “transmission medium” shall be taken toinclude any intangible medium that is capable of storing, encoding orcarrying instructions for execution by the machine 700, and includesdigital or analog communications signals or other intangible medium tofacilitate communication of such software.

Conventional terms in the fields of computer networking and computersystems have been used herein. The terms are known in the art and areprovided only as a non-limiting example for convenience purposes.Accordingly, the interpretation of the corresponding terms in theclaims, unless stated otherwise, is not limited to any particulardefinition.

Although specific embodiments have been illustrated and describedherein, it will be appreciated by those of ordinary skill in the artthat any arrangement that is calculated to achieve the same purpose maybe substituted for the specific embodiments shown. Many adaptations willbe apparent to those of ordinary skill in the art. Accordingly, thisapplication is intended to cover any adaptations or variations.

The above detailed description includes references to the accompanyingdrawings, which form a part of the detailed description. The drawingsshow, by way of illustration, specific embodiments that may bepracticed. These embodiments are also referred to herein as “examples.”Such examples may include elements in addition to those shown ordescribed. However, the present inventor also contemplates examples inwhich only those elements shown or described are provided. Moreover, thepresent inventor also contemplates examples using any combination orpermutation of those elements shown or described (or one or more aspectsthereof), either with respect to a particular example (or one or moreaspects thereof), or with respect to other examples (or one or moreaspects thereof) shown or described herein.

All publications, patents, and patent documents referred to in thisdocument are incorporated by reference herein in their entirety, asthough individually incorporated by reference. In the event ofinconsistent usages between this document and those documents soincorporated by reference, the usage in the incorporated reference(s)should be considered supplementary to that of this document; forirreconcilable inconsistencies, the usage in this document controls.

In this document, the terms “a” or “an” are used, as is common in patentdocuments, to include one or more than one, independent of any otherinstances or usages of “at least one” or “one or more.” In thisdocument, the term “or” is used to refer to a nonexclusive or, such that“A or B” includes “A but not B,” “B but not A,” and “A and B,” unlessotherwise indicated. In this document, the terms “including” and “inwhich” are used as the plain-English equivalents of the respective terms“comprising” and “wherein.” Also, in the following claims, the terms“including” and “comprising” are open-ended, that is, a system, device,article, or process that includes elements in addition to those listedafter such a term in a claim are still deemed to fall within the scopeof that claim. Moreover, in the following claims, the terms “first,”“second,” and “third,” etc. are used merely as labels, and are notintended to impose numerical requirements on their objects.

Method examples described herein can be machine or computer-implementedat least in part. Some examples can include a computer-readable mediumor machine-readable medium encoded with instructions operable toconfigure an electronic device to perform methods as described in theabove examples. An implementation of such methods can include code, suchas microcode, assembly language code, a higher-level language code, orthe like. Such code can include computer-readable instructions forperforming various methods. The code may form portions of computerprogram products. Further, in an example, the code can be tangiblystored on one or more volatile, non-transitory, or non-volatile tangiblecomputer-readable media, such as during execution or at other times.Examples of these tangible computer-readable media can include, but arenot limited to, hard disks, removable magnetic disks, removable opticaldisks (e.g., compact disks and digital video disks), magnetic cassettes,memory cards or sticks, random access memories (RAMs), read-onlymemories (ROMs), and the like.

The above description is intended to be illustrative, and notrestrictive. For example, the above-described examples (or one or moreaspects thereof) may be used in combination with each other. Otherembodiments may be used, such as by one of ordinary skill in the artupon reviewing the above description. The Abstract is provided to allowthe reader to quickly ascertain the nature of the technical disclosureand is submitted with the understanding that it will not be used tointerpret or limit the scope or meaning of the claims. Also, in theabove Detailed Description, various features may be grouped together tostreamline the disclosure. This should not be interpreted as intendingthat an unclaimed disclosed feature is essential to any claim. Rather,inventive subject matter may lie in less than all features of aparticular disclosed embodiment. Thus, the following claims are herebyincorporated into the Detailed Description, with each claim standing onits own as a separate embodiment, and it is contemplated that suchembodiments can be combined with each other in various combinations orpermutations. The scope of the embodiments should be determined withreference to the appended claims, along with the full scope ofequivalents to which such claims are entitled.

1. A method of communicating a food order while a customer is driving avehicle, the method operable to receive the food order on a mobilecommunications device and communicate the food order to a restaurantorder processing system, the method comprising: executing a foodordering app on a mobile communications device, the mobilecommunications device including: a motion detection system to generatemotion data indicating motion of the mobile communications device; amicrophone to receive aural input and a speaker to generate auraloutput; a display to present visual output and an input device toreceive manual input; and wireless communications circuitry to connectto and communicate with a communications network; determining, by thefood ordering app based at least in part on motion data received fromthe motion detection system, a speed of motion of the mobilecommunications device; and in response to the determined speed of motionof the mobile communications device being greater than a specified speedthreshold: disabling manual input from the input device into the foodordering app; initiating, using communications circuitry of the mobilecommunications device, a connection between the mobile communicationsdevice and a remote terminal at a remote order facilitation system;transmitting, to the remote terminal, data generated in response tomanual input received by the input device and corresponding to a partialselection of a food order; generating, at the speaker of the mobilecommunications device, voice communications originating at the remoteterminal; receiving, at the microphone of the mobile communicationsdevice, voice input corresponding to the food order to be fulfilled by arestaurant; transmitting, via the connection, the food order to theremote terminal at the remote order facilitation system; receiving, bythe food ordering app from the remote order facilitation system via theconnection, an indication that the food order was successfully receivedby the remote order facilitation system; and generating, via the foodordering app, an indication that the food order is being processed to befulfilled at the restaurant.
 2. The method of claim 1, wherein themotion detection system includes a global positioning system (GPS). 3.The method of claim 1, wherein the motion detection system includes anaccelerometer.
 4. The method of claim 1, wherein the remote terminal atthe remote order facilitation system is operated by a human customerservice representative (CSR).
 5. The method of claim 9, wherein the atleast one payment service is a credit card.
 6. The method of claim 9,wherein the at least one payment service is a stored-value account. 7.The method of claim 1, wherein the indication that the food order isbeing processed is an audio indication generated at the speaker.
 8. Themethod of claim 1, wherein the food ordering app utilizes speechrecognition software to convert the voice input corresponding to a foodorder into text corresponding to the voice input, and wherein the textis transmitted to the remote terminal along with the voice input.
 9. Themethod of claim 1, wherein the voice input corresponding to a food orderincludes an indication for payment of the food order through at leastone payment service; and wherein data indicative of the customer's orderis made available to the remote order facilitation system together withan instruction to process as payment for the ordered food an electronicdebit against an account associated with at least one of the mobilecommunications device and a user of the device.
 10. The method of claim1, wherein the display to present visual output is a touchscreen, andwherein the input device is the touchscreen.
 11. A non-transitorymachine-readable storage medium, with instructions stored thereon, whichwhen executed by at least one processor of a mobile communicationsdevice, cause the mobile communications device to: execute a foodordering app on a mobile communications device, the mobilecommunications device including: a motion detection system to generatemotion data to indicate motion of the mobile communications device; amicrophone to receive aural input and a speaker to generate auraloutput; a display to present visual output and an input device toreceive manual input; and wireless communications circuitry to connectto and communicate with a communications network; determine, by the foodordering app based at least in part on motion data received from themotion detection system, a speed of motion of the mobile communicationsdevice; and in response to the determined speed of motion of the mobilecommunications device being greater than a specified speed threshold:disable manual input from the input device into the food ordering app;initiate, using communications circuitry of the mobile communicationsdevice, a connection between the mobile communications device and aremote terminal at a remote order facilitation system; transmit, to theremote terminal, data generated in response to manual input received bythe input device and corresponding to a partial selection of a foodorder; generate, at the speaker of the mobile communications device,voice communications originating at the remote terminal; receive, at themicrophone of the mobile communications device, voice inputcorresponding to the food order to be fulfilled by a restaurant;transmit, via the connection, the food order to the remote terminal atthe remote order facilitation system; receive, by the food ordering appfrom the remote order facilitation system via the connection, anindication that the food order was successfully received by the remoteorder facilitation system; and generate, via the food ordering app, anindication that the food order is being processed to be fulfilled at therestaurant.
 12. The non-transitory machine-readable storage medium ofclaim 11, wherein the motion detection system includes a globalpositioning system (GPS).
 13. The non-transitory machine-readablestorage medium of claim 11, wherein the motion detection system includesan accelerometer.
 14. The non-transitory machine-readable storage mediumof claim 11, wherein the remote terminal at the remote orderfacilitation system is operated by a human customer servicerepresentative (C SR).
 15. The non-transitory machine-readable storagemedium of claim 19, wherein the at least one payment service is a creditcard.
 16. The non-transitory machine-readable storage medium of claim19, wherein the at least one payment service is a stored-value account.17. The non-transitory machine-readable storage medium of claim 11,wherein the indication that the food order is being processed is anaudio indication generated at the speaker.
 18. The non-transitorymachine-readable storage medium of claim 11, wherein the food orderingapp utilizes speech recognition software to convert the voice inputcorresponding to a food order into text corresponding to the voiceinput, and wherein the text is transmitted to the remote terminal alongwith the voice input.
 19. The non-transitory machine-readable storagemedium of claim 11, wherein the voice input corresponding to a foodorder includes an indication for payment of the food order through atleast one payment service; and wherein data indicative of the customer'sorder is made available to the remote order facilitation system togetherwith an instruction to process as payment for the ordered food anelectronic debit against an account associated with at least one of themobile communications device and a user of the device.
 20. Thenon-transitory machine-readable storage medium of claim 11, wherein thedisplay to present visual output is a touchscreen, and wherein the inputdevice is the touchscreen.